from core.basic.skill import 技能
from core.basic.character import Character
from core.basic.skill import 主动技能, 被动技能

# 以下所有技能数据只录入背击时数据


class 技能0(主动技能):
    名称 = '影袭'
    所在等级 = 5
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 9
    MP = [15, 168]
    无色消耗 = 0
    data0 = [0, 1386, 1601, 1811, 2032, 2245, 2464, 2669, 2892, 3103, 3316, 3533, 3749, 3967, 4178, 4393, 4611, 4827, 5040, 5248, 5469, 5682, 5895, 6113, 6329, 6546, 6757, 6973, 7194, 7404, 7619, 7829, 8042, 8261, 8476, 8692, 8904, 9125, 9338, 9554, 9764, 9985, 10198, 10406, 10623, 10842, 11057, 11271, 11484, 11704, 11918, 12132, 12348, 12564, 12772, 12987, 13203, 13423, 13634, 13852, 14067, 14277, 14498, 14711, 14928, 15135, 15355, 15568, 15782, 15994, 16215]
    hit0 = 1
    TP成长 = 0.10
    TP上限 = 7


class 技能1(主动技能):
    名称 = "天诛"
    所在等级 = 15
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 7
    MP = [28, 308]
    无色消耗 = 0
    data0 = [0, 758, 851, 948, 1039, 1130, 1219, 1312, 1406, 1497, 1586, 1681, 1771, 1866, 1959, 2045, 2144, 2233, 2319, 2417, 2506, 2600, 2691, 2783, 2877, 2964, 3055, 3153, 3240, 3334, 3426, 3517, 3611, 3700, 3793, 3885, 3979, 4072, 4160, 4251, 4348, 4436, 4531, 4621, 4708, 4807, 4899, 4986, 5078, 5169, 5268, 5356, 5447, 5541, 5632, 5722, 5815, 5903, 6001, 6094, 6180, 6274, 6367, 6462, 6550, 6641, 6735, 6823, 6915, 7012, 7100]
    hit0 = 0
    data1 = [0, 3175, 3559, 3944, 4329, 4702, 5091, 5471, 5860, 6239, 6624, 7002, 7388, 7772, 8151, 8535, 8920, 9303, 9688, 10062, 10451, 10832, 11221, 11597, 11984, 12363, 12752, 13131, 13513, 13899, 14284, 14671, 15044, 15434, 15813, 16201, 16580, 16964, 17343, 17728, 18114, 18496, 18877, 19265, 19644, 20029, 20409, 20794, 21176, 21557, 21940, 22326, 22708, 23093, 23472, 23858, 24241, 24627, 25000, 25388, 25773, 26157, 26542, 26920, 27305, 27689, 28076, 28449, 28837, 29218, 29606]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 7

    形态 = ["非抓", "抓取"]

    def 形态变更(self, 形态, char: Character):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "非抓":
            self.hit0 = 0
            self.hit1 = 1
            self.power1 = 1.1
        if 形态 == "抓取":
            self.hit0 = 2
            self.hit1 = 1
            self.power1 = 1


class 技能2(主动技能):
    名称 = "割喉"
    所在等级 = 15
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 6
    MP = [30, 252]
    无色消耗 = 0
    data0 = [0, 2684, 2957, 3229, 3503, 3777, 4045, 4322, 4589, 4865, 5140, 5409, 5682, 5956, 6227, 6499, 6771, 7046, 7321, 7589, 7861, 8134, 8406, 8679, 8956, 9226, 9498, 9768, 10046, 10319, 10586, 10860, 11135, 11406, 11680, 11948, 12220, 12497, 12768, 13042, 13310, 13585, 13859, 14135, 14404, 14675, 14947, 15222, 15495, 15767, 16040, 16311, 16584, 16859, 17132, 17401, 17674, 17946, 18219, 18489, 18764, 19036, 19308, 19586, 19853, 20125, 20398, 20673, 20948, 21215, 21487]
    hit0 = 1
    data1 = [0, 1342, 1478, 1617, 1753, 1890, 2025, 2159, 2297, 2435, 2569, 2704, 2842, 2979, 3114, 3250, 3387, 3521, 3659, 3797, 3929, 4064, 4204, 4341, 4476, 4612, 4747, 4884, 5021, 5160, 5292, 5429, 5566, 5702, 5841, 5977, 6112, 6249, 6384, 6522, 6654, 6796, 6926, 7066, 7204, 7338, 7473, 7608, 7746, 7884, 8018, 8156, 8291, 8428, 8566, 8701, 8838, 8975, 9111, 9245, 9385, 9518, 9655, 9790, 9928, 10063, 10201, 10335, 10472, 10608, 10745]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 7


class 技能3(被动技能):
    名称 = '暗杀教义'
    所在等级 = 15
    等级上限 = 20
    基础等级 = 1

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.185 + 0.015 * self.等级, 5)


class 技能4(主动技能):
    名称 = "夺魂"
    所在等级 = 20
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 3
    MP = [40, 292]
    无色消耗 = 0
    data0 = [0, 2565, 2827, 3087, 3348, 3608, 3868, 4128, 4388, 4651, 4913, 5170, 5430, 5693, 5951, 6211, 6474, 6733, 6994, 7254, 7513, 7776, 8037, 8294, 8556, 8819, 9074, 9337, 9597, 9857, 10119, 10380, 10643, 10900, 11160, 11422, 11680, 11943, 12205, 12462, 12722, 12986, 13245, 13505, 13768, 14025, 14286, 14548, 14806, 15068, 15329, 15586, 15851, 16111, 16368, 16629, 16891, 17151, 17412, 17669, 17928, 18192, 18452, 18715, 18977, 19235, 19497, 19754, 20015, 20278, 20538]
    hit0 = 1
    TP成长 = 0.1
    TP上限 = 7


class 技能5(被动技能):
    名称 = '暗杀之匕首精通'
    所在等级 = 20
    等级上限 = 30
    基础等级 = 20

    def 物理攻击力倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            if self.等级 <= 20:
                return round(1.0 + 0.015 * self.等级, 5)
            else:
                return round(1.3 + 0.025 * (self.等级 - 20), 5)


class 技能6(主动技能):
    名称 = "穿心"
    所在等级 = 25
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 8
    MP = [30, 500]
    无色消耗 = 0
    data0 = [0, 4271, 4703, 5141, 5575, 6008, 6444, 6874, 7307, 7741, 8174, 8609, 9043, 9475, 9906, 10344, 10775, 11211, 11642, 12074, 12518, 12946, 13380, 13812, 14248, 14679, 15114, 15545, 15980, 16417, 16850, 17281, 17714, 18147, 18578, 19016, 19451, 19880, 20315, 20746, 21183, 21618, 22051, 22491, 22920, 23353, 23786, 24222, 24649, 25090, 25517, 25953, 26387, 26818, 27255, 27688, 28120, 28551, 28990, 29421, 29853, 30294, 30724, 31159, 31592, 32025, 32458, 32889, 33324, 33758, 34194]
    hit0 = 1
    data1 = [0, 2134, 2353, 2572, 2785, 3004, 3221, 3439, 3653, 3871, 4086, 4302, 4523, 4739, 4956, 5172, 5392, 5605, 5819, 6040, 6256, 6471, 6689, 6909, 7123, 7340, 7559, 7774, 7988, 8208, 8419, 8640, 8858, 9078, 9293, 9509, 9726, 9940, 10158, 10375, 10588, 10811, 11027, 11243, 11458, 11675, 11894, 12107, 12326, 12544, 12764, 12976, 13196, 13411, 13626, 13843, 14059, 14274, 14493, 14712, 14927, 15145, 15365, 15580, 15792, 16012, 16230, 16446, 16661, 16880, 17099]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 7


class 技能7(主动技能):
    名称 = "追命"
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 10
    MP = [50, 420]
    无色消耗 = 0
    data0 = [0, 5338, 5877, 6423, 6965, 7506, 8042, 8588, 9128, 9668, 10211, 10755, 11295, 11836, 12380, 12922, 13457, 14001, 14541, 15090, 15630, 16172, 16713, 17253, 17798, 18336, 18877, 19420, 19960, 20502, 21042, 21590, 22127, 22670, 23213, 23750, 24292, 24835, 25378, 25920, 26461, 27002, 27546, 28087, 28628, 29173, 29711, 30252, 30790, 31332, 31878, 32416, 32965, 33499, 34043, 34582, 35125, 35670, 36211, 36752, 37293, 37835, 38374, 38916, 39458, 40000, 40543, 41082, 41626, 42168, 42708]
    hit0 = 1
    TP成长 = 0.1
    TP上限 = 7

    # 背击时增加50%
    倍率 = 1.5


class 技能8(主动技能):
    名称 = "潜影刺击"
    所在等级 = 35
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 15
    MP = [126, 1058]
    无色消耗 = 1
    data0 = [0, 1679, 1850, 2021, 2187, 2361, 2532, 2700, 2870, 3043, 3211, 3383, 3553, 3722, 3893, 4063, 4231, 4404, 4578, 4744, 4914, 5088, 5256, 5427, 5601, 5771, 5939, 6110, 6281, 6450, 6621, 6792, 6962, 7133, 7303, 7471, 7643, 7817, 7984, 8153, 8328, 8494, 8664, 8838, 9006, 9178, 9348, 9519, 9688, 9861, 10028, 10202, 10371, 10539, 10710, 10881, 11051, 11222, 11393, 11563, 11734, 11903, 12071, 12244, 12418, 12588, 12756, 12928, 13101, 13266, 13438]
    hit0 = 2
    data1 = [0, 6718, 7402, 8080, 8763, 9446, 10128, 10808, 11494, 12175, 12858, 13536, 14219, 14903, 15581, 16264, 16947, 17630, 18309, 18994, 19675, 20358, 21036, 21719, 22403, 23081, 23764, 24447, 25129, 25809, 26493, 27173, 27856, 28537, 29220, 29904, 30587, 31265, 31948, 32629, 33312, 33993, 34676, 35358, 36037, 36719, 37404, 38086, 38765, 39447, 40129, 40811, 41491, 42174, 42857, 43536, 44219, 44903, 45586, 46266, 46947, 47630, 48314, 48994, 49677, 50358, 51038, 51722, 52405, 53086, 53766]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 5


class 技能9(主动技能):
    名称 = "刃舞"
    所在等级 = 35
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 15
    MP = [45, 850]
    无色消耗 = 1
    data0 = [0, 381, 420, 463, 501, 542, 581, 617, 656, 699, 733, 775, 808, 850, 891, 931, 969, 1008, 1043, 1085, 1122, 1164, 1203, 1243, 1279, 1319, 1360, 1395, 1437, 1476, 1512, 1552, 1593, 1628, 1671, 1707, 1746, 1784, 1826, 1859, 1904, 1945, 1981, 2022, 2058, 2095, 2137, 2177, 2214, 2255, 2294, 2330, 2368, 2411, 2446, 2488, 2526, 2563, 2604, 2644, 2682, 2720, 2762, 2798, 2841, 2877, 2917, 2956, 2993, 3030, 3072]
    hit0 = 18
    data1 = [0, 6527, 7189, 7852, 8514, 9176, 9837, 10501, 11158, 11820, 12482, 13142, 13805, 14470, 15132, 15792, 16455, 17117, 17779, 18439, 19106, 19767, 20429, 21090, 21753, 22419, 23075, 23737, 24401, 25063, 25724, 26388, 27050, 27711, 28371, 29033, 29697, 30361, 31021, 31683, 32346, 33008, 33668, 34330, 34995, 35655, 36314, 36979, 37638, 38301, 38966, 39627, 40288, 40950, 41614, 42276, 42939, 43601, 44263, 44926, 45582, 46246, 46912, 47575, 48234, 48896, 49557, 50219, 50881, 51547, 52209]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.hit0 = 18*2
        self.power0 = 0.62*1.3


class 技能10(主动技能):
    名称 = "影戮"
    所在等级 = 40
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 25
    MP = [150, 1260]
    无色消耗 = 1
    data0 = [0, 2616, 2887, 3144, 3412, 3682, 3949, 4207, 4474, 4741, 5003, 5272, 5536, 5805, 6065, 6331, 6599, 6864, 7125, 7392, 7661, 7923, 8190, 8459, 8727, 8984, 9251, 9517, 9786, 10044, 10311, 10579, 10848, 11109, 11379, 11645, 11904, 12169, 12436, 12706, 12963, 13231, 13499, 13766, 14024, 14297, 14564, 14822, 15088, 15357, 15624, 15886, 16152, 16418, 16686, 16943, 17214, 17481, 17741, 18006, 18277, 18543, 18806, 19071, 19339, 19609, 19867, 20133, 20401, 20659, 20926]
    hit0 = 4
    data1 = [0, 9402, 10361, 11312, 12269, 13221, 14177, 15128, 16086, 17040, 17989, 18945, 19899, 20858, 21808, 22764, 23719, 24667, 25622, 26582, 27532, 28487, 29441, 30396, 31348, 32305, 33261, 34216, 35166, 36119, 37079, 38029, 38984, 39940, 40887, 41845, 42799, 43755, 44708, 45663, 46616, 47567, 48524, 49482, 50437, 51384, 52340, 53296, 54247, 55203, 56160, 57113, 58066, 59019, 59974, 60928, 61882, 62837, 63790, 64744, 65697, 66657, 67608, 68564, 69516, 70471, 71425, 72380, 73334, 74284, 75241]
    hit1 = 1
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.hit0 = 4+3
        self.power0 = 0.74*1.26


class 技能11(主动技能):
    名称 = "瞬杀"
    所在等级 = 45
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    CD = 45
    MP = [250, 2500]
    无色消耗 = 2
    data0 = [0, 37887, 41732, 45576, 49420, 53268, 57108, 60957, 64797, 68643, 72484, 76332, 80178, 84017, 87860, 91704, 95549, 99393, 103238, 107082, 110919, 114766, 118612, 122455, 126304, 130144, 133985, 137833, 141674, 145520, 149363, 153212, 157050, 160900, 164741, 168585, 172431, 176274, 180119, 183955, 187803, 191647, 195490, 199338, 203182, 207020, 210868, 214710, 218557, 222399, 226247, 230085, 233937, 237777, 241618, 245468, 249309, 253147, 256993, 260841, 264685, 268528, 272375, 276218, 280058, 283902, 287745, 291588, 295436, 299275, 303121]
    hit0 = 1
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.倍率 *= 1.28


class 技能12(被动技能):
    名称 = '暗杀之心'
    所在等级 = 48
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            if self.等级 <= 20:
                return round(1.03 + 0.02 * self.等级, 5)
            else:
                return round(1.43 + 0.021 * (self.等级 - 20), 5)


class 技能13(主动技能):
    名称 = "影斩·乱舞"
    所在等级 = 50
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40
    CD = 145
    MP = [881, 7403]
    无色消耗 = 7
    data0 = [0, 2206, 2714, 3227, 3736, 4249, 4759, 5272, 5784, 6294, 6804, 7314, 7827, 8340, 8850, 9361, 9870, 10383, 10894, 11406, 11917, 12426, 12937, 13447, 13961, 14474, 14984, 15495, 16004, 16515, 17028, 17540, 18051, 18560, 19071, 19583, 20094, 20608, 21119, 21628, 22138, 22649, 23162, 23672, 24185, 24697, 25207, 25717, 26228, 26740, 27253]
    hit0 = 20
    data1 = [0, 34641, 42674, 50705, 58738, 66774, 74803, 82839, 90869, 98905, 106938, 114969, 123003, 131035, 139068, 147102, 155133, 163164, 171200, 179232, 187264, 195297, 203332, 211363, 219396, 227428, 235461, 243497, 251527, 259561, 267596, 275627, 283661, 291693, 299725, 307760, 315791, 323822, 331858, 339889, 347921, 355955, 363986, 372021, 380054, 388085, 396119, 404152, 412185, 420219, 428249]
    hit1 = 1

    # LV9效果
    CDR = 0.9
    # LV3效果
    power1 = 1.1


class 技能14(主动技能):
    名称 = "绝命飞刃"
    所在等级 = 60
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 30
    MP = [400, 1620]
    无色消耗 = 1
    data0 = [0, 2256, 2486, 2712, 2945, 3173, 3404, 3629, 3855, 4087, 4318, 4543, 4774, 5002, 5231, 5458, 5689, 5923, 6146, 6379, 6604, 6837, 7063, 7292, 7519, 7750, 7978, 8209, 8437, 8665, 8896, 9127, 9352, 9582, 9813, 10038, 10270, 10494, 10725, 10956, 11182, 11412, 11641, 11869, 12101, 12329, 12555, 12786, 13016, 13245, 13472]
    hit0 = 1
    data1 = [0, 9027, 9942, 10854, 11774, 12685, 13604, 14519, 15433, 16348, 17263, 18178, 19093, 20011, 20930, 21846, 22760, 23675, 24590, 25503, 26418, 27337, 28253, 29167, 30082, 30995, 31914, 32830, 33745, 34663, 35580, 36492, 37409, 38322, 39237, 40157, 41071, 41990, 42901, 43816, 44731, 45647, 46563, 47479, 48393, 49316, 50226, 51143, 52056, 52974, 53889]
    hit1 = 1
    data2 = [0, 18052, 19880, 21713, 23542, 25375, 27207, 29036, 30864, 32697, 34531, 36358, 38194, 40024, 41856, 43685, 45519, 47348, 49183, 51011, 52843, 54673, 56502, 58332, 60167, 62000, 63824, 65657, 67494, 69322, 71151, 72986, 74813, 76649, 78478, 80311, 82140, 83968, 85803, 87636, 89466, 91295, 93127, 94955, 96790, 98622, 100455, 102281, 104115, 105947, 107780]
    hit2 = 1
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.power2 = 1.58


class 技能15(主动技能):
    名称 = "八荒影杀"
    所在等级 = 70
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 50
    MP = [800, 1680]
    无色消耗 = 2
    data0 = [0, 3923, 4321, 4720, 5121, 5519, 5917, 6313, 6714, 7112, 7511, 7906, 8300, 8703, 9099, 9502, 9896, 10293, 10694, 11093, 11491, 11887, 12285, 12683, 13082, 13483, 13878, 14279, 14675, 15074, 15474, 15870, 16266, 16667, 17062, 17467, 17862, 18261, 18658, 19057, 19455, 19848, 20249, 20648, 21046, 21444, 21840, 22243, 22641, 23038, 23436]
    hit0 = 1
    data1 = [0, 3923, 4321, 4720, 5121, 5519, 5917, 6313, 6714, 7112, 7511, 7906, 8300, 8703, 9099, 9502, 9896, 10293, 10694, 11093, 11491, 11887, 12285, 12683, 13082, 13483, 13878, 14279, 14675, 15074, 15474, 15870, 16266, 16667, 17062, 17467, 17862, 18261, 18658, 19057, 19455, 19848, 20249, 20648, 21046, 21444, 21840, 22243, 22641, 23038, 23436]
    hit1 = 8
    data2 = [0, 15699, 17291, 18887, 20473, 22069, 23665, 25253, 26848, 28440, 30033, 31628, 33216, 34812, 36403, 37993, 39590, 41181, 42773, 44367, 45957, 47553, 49144, 50737, 52330, 53927, 55515, 57110, 58703, 60292, 61888, 63484, 65072, 66667, 68255, 69851, 71447, 73033, 74629, 76220, 77813, 79406, 80997, 82593, 84185, 85777, 87372, 88958, 90554, 92147, 93738]
    hit2 = 1
    TP成长 = 0.1
    TP上限 = 5

    是否有护石 = 1

    def 装备护石(self, char):
        self.power0 = 2.50
        self.hit1 = 7
        self.power1 = 1.32  # 上一任作者写的还额外*1.2,为bug加成，没有测试出触发方式，就未计入
        self.power2 = 1.32


class 技能16(主动技能):
    名称 = "死亡连舞"
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 40
    MP = [580, 4500]
    无色消耗 = 3
    data0 = [0, 4633, 5100, 5572, 6038, 6509, 6978, 7447, 7919, 8387, 8859, 9328, 9797, 10265, 10735, 11205, 11674, 12149, 12613, 13090, 13552, 14022, 14491, 14967, 15436, 15906, 16377, 16844, 17312, 17783, 18253, 18722, 19193, 19661, 20133, 20599, 21072, 21538, 22012, 22480, 22950, 23419, 23889, 24358, 24828, 25302, 25766, 26240, 26706, 27183, 27646]
    hit0 = 3
    data1 = [0, 27779, 30595, 33414, 36237, 39056, 41870, 44693, 47513, 50330, 53146, 55962, 58782, 61605, 64419, 67241, 70061, 72880, 75696, 78512, 81331, 84147, 86965, 89786, 92611, 95421, 98242, 101062, 103881, 106696, 109515, 112333, 115150, 117966, 120786, 123606, 126432, 129246, 132064, 134883, 137699, 140515, 143336, 146155, 148970, 151789, 154614, 157433, 160248, 163065, 165881]
    hit1 = 0
    data2 = [0, 54884, 60458, 66021, 71589, 77155, 82723, 88295, 93860, 99428, 105002, 110574, 116136, 121705, 127271, 132839, 138413, 143976, 149547, 155108, 160679, 166244, 171815, 177376, 182957, 188521, 194092, 199654, 205226, 210795, 216358, 221933, 227499, 233066, 238631, 244200, 249768, 255331, 260901, 266473, 272049, 277618, 283183, 288749, 294315, 299884, 305455, 311018, 316591, 322151, 327725]
    hit2 = 1

    是否有护石 = 1

    形态 = ["非抓", "抓取"]

    def 形态变更(self, 形态, char: Character):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if '死亡连舞' in char.护石栏:
            形态 = '非抓'
        if 形态 == "非抓":
            self.hit0 = 3
            self.hit1 = 0
            self.hit2 = 1
        if 形态 == "抓取":
            self.hit0 = 6
            self.hit1 = 2
            self.hit2 = 0

    # 装备护石后总是非抓模式
    def 装备护石(self, char):
        self.hit0 = 3
        self.hit1 = 0
        self.hit2 = 1
        self.power2 = 1.4
        self.CDR *= 0.9


class 技能17(被动技能):
    名称 = '潜行暗杀'
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.18 + 0.02 * self.等级, 5)


class 技能18(主动技能):
    名称 = "剜心"
    所在等级 = 80
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 45
    MP = [800, 6000]
    无色消耗 = 5
    data0 = [0, 115482, 127196, 138914, 150624, 162342, 174059, 185779, 197492, 209202, 220924, 232637, 244355, 256075, 267790, 279500, 291221, 302932, 314651, 326367, 338080, 349797, 361510, 373230, 384946, 396655, 408373, 420090, 431805, 443523, 455239, 466951, 478666, 490383, 502099, 513815, 525533, 537248, 548964, 560682, 572399, 584111, 595827, 607542, 619259, 630971, 642686, 654404, 666117, 677837, 689552]
    hit0 = 1
    是否有护石 = 1

    def 装备护石(self, char):
        self.倍率 = 1.24


class 技能19(主动技能):
    名称 = "幽冥链狱：索命"
    所在等级 = 85
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40
    CD = 180
    MP = [2500, 5000]
    无色消耗 = 10
    data0 = [0, 4065, 4478, 4890, 5304, 5716, 6130, 6542, 6953, 7367, 7778, 8192, 8604, 9017, 9429, 9842, 10254, 10666, 11079, 11491, 11904, 12315, 12729, 13141, 13556, 13967, 14381, 14792, 15204, 15618, 16029, 16443, 16855, 17268, 17680, 18093, 18505, 18917, 19329, 19742, 20155, 20566, 20980, 21394, 21806, 22218, 22632, 23043, 23455, 23869, 24280]
    hit0 = 1
    data1 = [0, 7081, 8727, 10371, 12014, 13649, 15297, 16938, 18575, 20222, 21863, 23507, 25149, 26790, 28433, 30077, 31720, 33357, 35004, 36645, 38289, 39932, 41574, 43217, 44858, 46498, 48147, 49789, 51425, 53072, 54713, 56355, 57997, 59641, 61283, 62924, 64571, 66213, 67856, 69492, 71133, 72781, 74416, 76061, 77707, 79349, 80990, 82634, 84275, 85919, 87559]
    hit1 = 0
    data2 = [0, 155818, 191957, 228092, 264221, 300355, 336486, 372622, 408758, 444887, 481021, 517156, 553289, 589422, 625552, 661690, 697825, 733954, 770084, 806216, 842354, 878486, 914620, 950751, 986880, 1023021, 1059153, 1095283, 1131418, 1167550, 1203688, 1239820, 1275953, 1312086, 1348217, 1384351, 1420483, 1456615, 1492749, 1528886, 1565016, 1601151, 1637284, 1673417, 1709549, 1745681, 1781815, 1817953, 1854083, 1890217, 1926352]
    hit2 = 0
    data3 = [0, 161331, 198739, 236152, 273558, 310969, 348378, 385795, 423201, 460609, 498021, 535432, 572848, 610252, 647659, 685075, 722481, 759889, 797295, 834714, 872120, 909532, 946942, 984350, 1021760, 1059169, 1096586, 1133996, 1171402, 1208813, 1246222, 1283631, 1321047, 1358452, 1395868, 1433273, 1470683, 1508096, 1545505, 1582914, 1620327, 1657736, 1695140, 1732549, 1769964, 1807377, 1844784, 1882195, 1919603, 1957013, 1994428]
    hit3 = 1

    形态 = ["非抓", "抓取"]

    def 形态变更(self, 形态, char: Character):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "非抓":
            self.hit0 = 1
            self.hit1 = 0
            self.hit2 = 0
            self.hit3 = 1
        if 形态 == "抓取":
            self.hit0 = 1
            self.hit1 = 4
            self.hit2 = 1
            self.hit3 = 0


class 技能20(主动技能):
    名称 = '锁链'
    所在等级 = 85
    等级上限 = 1
    # 学习间隔 = 5
    # 等级精通 = 40
    基础等级 = 1
    无色消耗 = 10
    MP = [2500, 5000]
    data0 = [0, 4065, 4478, 4890, 5304, 5716, 6130, 6542, 6953, 7367, 7778, 8192, 8604, 9017, 9429, 9842, 10254, 10666, 11079, 11491, 11904, 12315, 12729, 13141, 13556, 13967, 14381, 14792, 15204, 15618, 16029, 16443, 16855, 17268, 17680, 18093, 18505, 18917, 19329, 19742, 20155, 20566, 20980, 21394, 21806, 22218, 22632, 23043, 23455, 23869, 24280]
    hit0 = 1
    data1 = [0, 16265, 17914, 19565, 21213, 22864, 24513, 26164, 27815, 29464, 31115, 32765, 34415, 36065, 37714, 39365, 41014, 42665, 44316, 45965, 47615, 49265, 50916, 52565, 54215, 55864, 57515, 59166, 60816, 62466, 64115, 65766, 67416, 69065, 70714, 72365, 74016, 75667, 77316, 78965, 80616, 82266, 83916, 85565, 87215, 88866, 90517, 92167, 93815, 95466, 97117]
    hit1 = 1
    CD = 1


class 技能21(主动技能):
    名称 = "影缚追魂锁"
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40
    CD = 60
    MP = [800, 6000]
    无色消耗 = 7
    data0 = [0, 9351, 10300, 11249, 12198, 13148, 14095, 15044, 15993, 16942, 17892, 18841, 19788, 20737, 21686, 22636, 23585, 24532, 25481, 26430, 27380, 28329, 29276, 30225, 31174, 32124, 33073, 34020, 34969, 35918, 36868, 37817, 38764, 39713, 40663, 41612, 42561, 43510, 44457, 45407, 46356, 47305, 48254, 49201, 50151, 51100, 52049, 52998, 53945, 54895, 55844]
    hit0 = 4
    data1 = [0, 149641, 164822, 180003, 195183, 210364, 225545, 240726, 255907, 271089, 286270, 301451, 316632, 331813, 346994, 362174, 377355, 392536, 407717, 422899, 438080, 453261, 468442, 483623, 498804, 513985, 529165, 544346, 559527, 574708, 589890, 605071, 620252, 635433, 650614, 665795, 680977, 696158, 711337, 726518, 741700, 756881, 772062, 787243, 802424, 817605, 832786, 847968, 863149, 878328, 893510]
    hit1 = 1


class 技能22(被动技能):
    名称 = '暗影禁忌'
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.18 + 0.02 * self.等级, 5)


class 技能23(主动技能):
    名称 = "无间影狱·噬灭"
    所在等级 = 100
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40
    CD = 290
    MP = [4028, 8056]
    无色消耗 = 15
    data0 = [0, 15676, 19311, 22945, 26580, 30215, 33851, 37486, 41121, 44756, 48390, 52027, 55662, 59296, 62931, 66566, 70201, 73837, 77472, 81107, 84741, 88376, 92013, 95647, 99282, 102917, 106552, 110187, 113823, 117458, 121092, 124727, 128362, 131998, 135633, 139268, 142903, 146537, 150172, 153809, 157443, 161078, 164713, 168348, 171984, 175619, 179254, 182888, 186523, 190158, 193794]
    hit0 = 3
    data1 = [0, 188114, 231735, 275355, 318976, 362596, 406218, 449839, 493460, 537080, 580701, 624321, 667943, 711564, 755184, 798805, 842426, 886046, 929668, 973289, 1016909, 1060530, 1104150, 1147771, 1191393, 1235014, 1278634, 1322255, 1365875, 1409496, 1453118, 1496738, 1540359, 1583979, 1627600, 1671221, 1714841, 1758463, 1802084, 1845704, 1889325, 1932945, 1976566, 2020188, 2063809, 2107429, 2151050, 2194670, 2238291, 2281913, 2325533]
    hit1 = 1
    data2 = [0, 47027, 57933, 68838, 79744, 90648, 101554, 112460, 123364, 134270, 145174, 156080, 166985, 177891, 188795, 199701, 210605, 221511, 232417, 243321, 254227, 265132, 276038, 286942, 297848, 308752, 319658, 330563, 341468, 352373, 363279, 374185, 385089, 395995, 406899, 417805, 428710, 439615, 450520, 461426, 472330, 483236, 494140, 505046, 515952, 526857, 537762, 548667, 559573, 570477, 581383]
    hit2 = 3
    data3 = [0, 94056, 115867, 137677, 159487, 181297, 203109, 224920, 246730, 268540, 290350, 312161, 333971, 355781, 377591, 399402, 421212, 443022, 464834, 486644, 508455, 530265, 552075, 573885, 595696, 617506, 639316, 661127, 682937, 704747, 726559, 748369, 770179, 791990, 813800, 835610, 857421, 879231, 901041, 922851, 944662, 966472, 988282, 1010094, 1031904, 1053715, 1075525, 1097335, 1119145, 1140956, 1162766]
    hit3 = 1


class classChange(Character):
    def __init__(self, equVersion=""):
        self.实际名称 = 'shadow_dancer'
        self.名称 = '隐夜·影舞者'
        self.角色 = '暗夜使者'

        self.职业 = '影舞者'
        self.武器选项 = ['匕首']
        self.输出类型选项 = ['物理百分比']
        self.防具精通属性 = ['力量']
        self.类型 = '物理百分比'
        self.武器类型 = '匕首'
        self.防具类型 = '皮甲'
        技能列表 = []
        技能序号 = {}
        i = 0
        while i >= 0:
            try:
                tem = eval('技能'+str(i)+'()')
                tem.基础等级计算()
                技能序号[tem.名称] = i
                技能列表.append(tem)
                i += 1
            except:
                i = -1
        self.技能栏 = 技能列表
        self.技能序号 = 技能序号
        self.buff = 2.03

        super().__init__(equVersion)

    def 职业特殊计算(self):
        # 二觉解放等级绑定
        锁链 = self.get_skill_by_name('锁链')
        锁链.等级上限 = 50
        锁链.等级 = self.get_skill_by_name('幽冥链狱：索命').等级
